package cn.rht.study.mapper;

import java.util.List;

import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import cn.rht.study.entity.User;

@Mapper
public interface UserMapper {
	/**
	 * 通过username寻找用户信息
	 * @param username
	 * @return
	 */
	User findByUsername(String username);
	/**
	 * 通过username寻找用户信息
	 * @param phone
	 * @return
	 */
	User findByPhone(String phone);
	/**
	 * 查找所有用户信息
	 * @return
	 */
	List<User> findAll();
	/**
	 * 添加用户
	 * @param username
	 * @param password
	 * @return
	 */
	Integer add(@Param("username")String username,@Param("password")String password);
	/**
	 * 修改用户信息
	 * @param user
	 * @return
	 */
	Integer change(User user);
	/**
	 * 删除用户
	 * @param id
	 * @return
	 */
	Integer delete(Integer id);
	/**
	 * 通过id寻找用户信息
	 * @param id
	 * @return
	 */
	User findById(Integer id);
	/**
	 * 批量添加用户
	 * @param users
	 * @return
	 */
	Integer addAll(@Param("users")List<User> users);
	/**
	 * 模糊查询用户
	 * @param username
	 * @return
	 */
	List<User> queryUserByName(String username);
	
	void uploadAvatar(@Param("avatar")String avatar,@Param("id")Integer id);
	
	void changeInfo(User user);

	Integer addUser(User user);
}
